<?php
/**
 * View_Block
 *
 * Класс для отображения стандартных блоков
 *
 * @author Дмитрий Кузьма <kouzma.d@gmail.ru>
 * @version 2.1
 */
class View_Block extends View_Base{

	public $arrPaymentTypes;
	public $arrOtherPaymentTypes;

	public function __construct(){
		parent::__construct();
		Service_Debug::setDebug();		
		$this->arrPaymentTypes = array('Credit card' => Service_Translate::getText('Кредитная карта'), 'Bank transfer' => Service_Translate::getText('Банковский перевод'), 'Cash' => Service_Translate::getText('Оплата наличными'), 'Other' => Service_Translate::getText('Другое'));
		$this->arrOtherPaymentTypes = array('' => Service_Translate::getText('Выберите нужную')/*, 'Credit card' => Service_Translate::getText('Кредитная карта (в офисе, по факсу)')*/, 'Bank transfer' => Service_Translate::getText('Банковский перевод'), 'QIWI' => Service_Translate::getText('Оплата через терминалы ОСМП (QIWI)'), 'WebMoney' => Service_Translate::getText('Оплата через систему WebMoney'), 'Cash' => Service_Translate::getText('Оплата наличными в офисе'), 'Other' => Service_Translate::getText('Другая'));
	}
			
	/**
	 * Выводит шапку
	 * 
	 */
	public function showTop() {
		Service_Debug::setDebug();
		$objUser = User_User::getUser();
		echo '<div id="header">';
			echo '<div id="slim-header">';
				echo '<div id="login-section">';
					if (!$objUser->id) { // Если пользователь незалогинен, то иконка входа
						echo '<div class="login-section-block">';
							echo '<img src="/content/images/icons/door-plus.png" style="position: relative; top:3px; margin-right:5px;">';
							echo '<a href="' . W_ABSPATH . 'auth/sign_in">Вход и регистрация</a>';
						echo '</div>';
					}
					else { // Если пользователь залогинен, то иконка профиля, сообщений и выход
						echo '<div class="login-section-block">';
							echo '<div id="profile-picture" class="login-section-picture"></div>';
							echo '<a href="' . W_ABSPATH . 'profile">Личный кабинет</a>';
							if ($objUser->countNewEvents('all')) echo '<span id="new-all-count" class="new-events-count">' . $objUser->countNewEvents('all') . '</span>';
						echo '</div>';
						echo '<div class="login-section-block">';
							echo '<div id="messages-picture" class="login-section-picture"></div>';
								echo '<a href="' . W_ABSPATH . 'messages">Сообщения</a>';
								if($objUser->getField('new_messages') != 0) echo '<span id="new-messages-count" class="new-events-count">' .$objUser->getField('new_messages') . '</span>';
						echo '</div>';
						echo '<div class="login-section-block">';
							echo '<div id="exit-picture" class="login-section-picture"></div>';
							echo '<a href="' . W_ABSPATH . 'auth/exit">Выйти</a>';
						echo '</div>';
					}
				echo '</div>'; // Закрываем div login-section
				echo '<a href="' . W_ABSPATH . '" id=header-logo></a>';
				
				// Меню шапки
				echo '<ul id="header-menu">';
					echo '<li><a href="' . W_ABSPATH . 'articles"';
						if (stripos($_SERVER['REQUEST_URI'], '/articles') !== false) echo 'class="active-menu-link"';
					echo '><span>Статьи</span></a></li>';
					
					echo '<li><a href="' . W_ABSPATH . 'categories"';
						if (stripos($_SERVER['REQUEST_URI'], '/categories') !== false) echo 'class="active-menu-link"';
					echo '><span>Категории</span></a></li>';
					
					echo '<li><a href="' . W_ABSPATH . 'orders"';
						if (stripos($_SERVER['REQUEST_URI'], '/orders') !== false) echo 'class="active-menu-link"';
					echo '><span>Заказы</span></a></li>';
					
					echo '<li><a href="' . W_ABSPATH . 'questions"';
					if (stripos($_SERVER['REQUEST_URI'], 'questions') !== false) echo 'class="active-menu-link"';
					echo '><span>Вопросы</span></a></li>';
				echo '</ul>';
			echo '</div>'; // Закрываем div slim-header
		echo '</div>'; // Закрываем div header
	}	
	
	/**
	 * Выводит подвал
	 * 
	 */
	public function showBasement() {
		Service_Debug::setDebug();
		echo '<div id="footer">';
			echo '<div id="slim-footer">';
				echo '<div id="copyright">© 2011–2012 <a href="' . W_ABSPATH . '">multyrem.ru</a></div>';
				echo '<div class="right" id="footer-links">';
					echo '<a href="' . W_ABSPATH . 'articles/archive">Статьи</a>';
				echo '</div>';
			echo '</div>';
		echo '</div>';
	}
	
	public function errorPage($error) {
		echo '<!DOCTYPE html>';
		echo '<html>';
			echo '<head>
				<link rel="stylesheet" type="text/css" href="' . W_NONE_HTTPS_PATH . 'content/css/style_new.css?v=2" />
				<meta name="robots" content="noindex,nofollow">
			</head>';
			echo '<body style="background:none;">';
			switch ($error) {
				case '404':
					echo '<h1>404</h1>';
					echo '<h2>' . Service_Translate::getText('Страницы которую вы ищете, нет') . '</h2>';
					echo '<p>' . Service_Translate::getText('Вернитесь на главную', View_Base::getLanguageUrl(W_ABSPATH)) . '</p>';
					break;
				case '403':
						echo '<h2>' . Service_Translate::getText('Доступ запрещен') . '</h2>';
						echo '<p>' . Service_Translate::getText('Вернитесь на главную', View_Base::getLanguageUrl(W_ABSPATH)) . '</p>';
						break;
			}	
			echo '</body>';
		echo '</html>';
	}
	
	/**
	 * Метод выводит хлебные крошки
	 *
	 */
	public function showCrumbs($arrCrumbs, $ifLastCrumbIsLink) {
		Service_Debug::setDebug();
		$crumbsSize = sizeof($arrCrumbs);
		if ($crumbsSize) echo '<div id="crumbs">';
		for ( $i = 0; $i < $crumbsSize; $i++) {
			$langUrl = substr($arrCrumbs[$i]['url'], strlen(W_ABSPATH), 3);
			if ($langUrl != 'eng' && $langUrl != 'rus') {
				$arrCrumbs[$i]['url'] = $this->getLanguageUrl($arrCrumbs[$i]['url']); // Преобразовываем url с учетом языка
			}
			if (!empty($arrCrumbs[$i]['url']) && !(!$ifLastCrumbIsLink && $i == ($crumbsSize - 1)) && $_SERVER['REQUEST_URI'] != $arrCrumbs[$i]['url'] && (!isset($arrCrumbs[$i]['no_link_if_last']) || !$arrCrumbs[$i]['no_link_if_last'])) {
				echo '<a class="crumb" href="' . $arrCrumbs[$i]['url'] . '">';
			}
			else echo '<noindex><span class="crumb">';
			echo $arrCrumbs[$i]['name'];
			if (!empty($arrCrumbs[$i]['url']) && !(!$ifLastCrumbIsLink && $i == ($crumbsSize - 1)) && $_SERVER['REQUEST_URI'] != $arrCrumbs[$i]['url'] && (!isset($arrCrumbs[$i]['no_link_if_last']) || !$arrCrumbs[$i]['no_link_if_last'])) {
				echo '</a>';
			}
			if ($i < $crumbsSize - 1) echo ' > ';
			else echo '</span></noindex>';
		}
		if ($crumbsSize) echo '</div>';
	}
	
	/**
	 * Метод выводит блок с последними статьями для главной страницы
	 *
	 */
	public function showLastArticlesBlock($arrArticles) {
		Service_Debug::setDebug();
		echo '<div id="last-articles-block">';
			foreach ($arrArticles as $arrArticle) {
				echo '<div class="article-block simple-block">';
					echo '<h2>';
						if ($arrArticle['category_url']) echo '<a href="' . W_ABSPATH . $arrArticle['category_url'] . '/articles/' . $arrArticle['article_url'] . '">' . $arrArticle['article_name'] . '</a>';
						else echo '<a href="' . W_ABSPATH . 'no_category/articles/' . $arrArticle['article_url'] . '">' . $arrArticle['article_name'] . '</a>';
					echo '</h2>';
					echo '<div class="simple-short-content">';
						if ($arrArticle['category_url']) echo '<a href="' . W_ABSPATH . $arrArticle['category_url'] . '/articles/' . $arrArticle['article_url'] . '">';
						else echo '<a href="' . W_ABSPATH . 'no_category/articles/' . $arrArticle['article_url'] . '">';
							echo '<img src="' . W_IMAGES . 'essence/article/' . $arrArticle['ID_article'] . '/main_' . $arrArticle['ID_article'] .'.jpg">';
						echo '</a>';
						echo '<p>';
							echo Service_Function::utf8_string_with_limit($arrArticle['text'], 400, true);
						echo '</p>';
						echo '<div class="clear"></div>';
					echo '</div>';
					echo '<div class="simple-info">';
						echo '<div>';
							echo 'Опубликовано: ' . Service_Date::changeDateFormat($arrArticle['created_at'], 'Y-m-d', 'j R Y');
						echo '</div>';
						echo '<div>';
							echo 'Раздел: ';
							if($arrArticle['category_name']) echo '<a href="' . W_ABSPATH . $arrArticle['category_url'] . '/articles">' .$arrArticle['category_name'] . '</a>';
							else echo  '<a href="' . W_ABSPATH .'no_category/articles">Без категории</a>';
						echo '</div>';
						echo '<div>';
							echo 'Просмотров: ' . $arrArticle['viewings'];
						echo '</div>';
					echo '</div>';
				echo '</div>';
			}
		echo '</div>';
		
	}
	
	/**
	 * Метод выводит блок с последними статьями для главной страницы
	 *
	 */
	public function ShowLastOrdersBlock($arrOrders) {
		Service_Debug::setDebug();
		echo '<div id="last-orders-block">';
			foreach ($arrOrders as $arrOrder) {
				echo '<div class="order-block simple-block">';
					echo '<h2>';
						echo '<a href="' . W_ABSPATH . 'orders/' . $arrOrder['ID_order']  . '">';
							echo Service_Function::utf8_string_with_limit($arrOrder['order_name'], 60, true);
						echo '</a>';
						echo '<span class="subtitle">' . $arrOrder['city_name'] . '</span>';
					echo '</h2>';
					echo '<div class="simple-short-content">';
						echo '<p>';
							echo Service_Function::utf8_string_with_limit($arrOrder['description'], 400, true);
						echo '</p>';
					echo '</div>';
					echo '<div class="simple-info">';
						echo '<div>';
							echo '<div class="time-icon"></div>';
								echo '' . Service_Date::changeDateFormat($arrOrder['created_at'], 'Y-m-d H-i-s', 'j R Y в H:i');
							echo '<div class="responses">';
							echo 'Предложений: ' . $arrOrder['order_responses'];
							echo '</div>';
						echo '</div>';
					echo '</div>';
				echo '</div>';
			}
		echo '</div>';
	
	}
	
	/**
	 * Метод выводит блок добавления заказа на главной странице
	 *
	 */
	public function showFastOrderBlock() {
		Service_Debug::setDebug();
		echo '<div id="fast-order">';
			echo '<div id="fast-steps">';
				echo '<p class="list">1. Оставь заказ на сайте</p>';
				echo '<p class="list">2. Выбери мастеров<p>';
				echo '<p class="list">3. Наслаждайся ремонтом</p>';
			echo '</div>';
		
		$objForm = new Form_ViewForm(array(
				'errorIfExists' => true,
				'id' => 'fast-order-form',
				'viewFormType' => 'div'
		), new Order());
			$objForm->show();
			echo '<h1>Сделай заказ на ремонт прямо сейчас</h1>';
				echo '<div id="title">';
					$objForm->textField(array('class' => 'mandatory', 'label' => 'Заголовок заказа'), 'order_name');
				echo '</div>';
				echo '<div id="description">';
					$objForm->textareaField(array('rows' => 15, 'cols' => 80, 'class' => 'mandatory', 'label' => 'Подробное описание работ (объём, сроки и т.д.)'), 'description');
				echo '</div>';
				$objCity = new City();
				$arrCities = $objCity->getArrCities();
				echo '<div>';
					echo '<div id="city">';
						$objForm->selectField(array('valueName' => 'city_name','keyName' => 'city','optionsArray' =>$arrCities),'city');
					echo '</div>';
					echo '<div id="submit">';
						$objForm->submitButton(array('class'=> 'sub-but blue', 'value' => 'Создать заказ'));
						//echo '<a class="sub-but blue" href="#">Создать заказ</a>';
					echo '</div>';
				echo '</div>';
				$objForm->close();
				echo '<div class="clear"></div>';
		echo '</div>';
		echo '<div id="full-order"><h1>Создание нового заказа</h1>';
			echo '<div id="no-login-adding">';
				echo '<form id="fast-order-form-full">';
					echo '<table>';
						echo '<tr><td class="first-column">Заголовок заказа</td><td><input type="text" id="Order_order_name" name="Order[order_name]" class="mandatory"></td></tr>';
						echo '<tr><td class="first-column">Описание работ</td><td><textarea id="Order_description" name="Order[description]" class="mandatory"></textarea></td></tr>';
						echo '<tr><td class="first-column">Город</td><td id="city"></td></tr>';
						echo '<tr><td class="first-column">Контактный телефон</td><td><input type="text" id="Order_phone" name="Order[phone]"></td></tr>' ;
						echo '<tr><td class="first-column">Ориентировочный бюджет</td><td><input type="text" id="Order_cost" name="Order[cost]"></td></tr>';
						echo '<tr><td class="first-column">Имя</td><td><input type="text" id="Order_first_name" name="Order[first_name]" class="mandatory"></td></tr>';
						echo '<tr><td class="first-column">Фамилия</td><td><input type="text" id="Order_last_name" name="Order[last_name]" class="mandatory"></td></tr>';
						echo '<tr><td class="first-column">Почта</td><td><input type="text" id="Order_e_mail" name="Order[e_mail]" maxlength="128" class="mandatory"></td></tr>';
						echo '<tr><td class="first-column">Пароль</td><td><input type="password" id="Order_pass" name="Order[pass]" class="mandatory pass"></td></tr>';								'<tr><td class="first-column">Подтверждение</td><td><input type="password" id="Order_pass_confirmation" name="Order[pass_confirmation]" class="confirm"></td></tr>';
						echo '<tr><td class="first-column">Подтверждение</td><td><input type="password" id="Order_pass_confirmation" name="Order[pass_confirmation]" class="confirm"></td></tr>';
						echo '<tr><td class="first-column">Введите цифры</td><td id="kaptcha-right"><img src="/auth/kaptcha" class="kaptcha" id="reg_crypt" alt="">';
						echo '<input type="text" id="Order_kaptcha" name="Order[kaptcha]" class="kaptchaInput mandatory" maxlength="6"></td><tr>';
					echo '</table>';
					echo '<input type="submit" id="Order_save" name="Order[save]" value="Отправить">';
				echo '</form>';
			echo '</div>';
			echo '<div id="login-adding">';
				echo '<form id="fast-order-form-full">';
					echo '<table>';
						echo '<tr><td class="first-column">Заголовок заказа</td><td><input type="text" id="Order_order_name" name="Order[order_name]" class="mandatory"></td></tr>';
						echo '<tr><td class="first-column">Описание работ</td><td><textarea id="Order_description" name="Order[description]" class="mandatory"></textarea></td></tr>';
						echo '<tr><td class="first-column">Город</td><td id="city"></td></tr>';
						echo '<tr><td class="first-column">Контактный телефон</td><td><input type="text" id="Order_phone" name="Order[phone]"></td></tr>' ;
						echo '<tr><td class="first-column">Ориентировочный бюджет</td><td><input type="text" id="Order_cost" name="Order[cost]"></td></tr>';
					echo '</table>';
					echo '<input type="submit" id="Order_save" name="Order[save]" value="Отправить">';
				echo '</form>';
			echo '</div>';
		echo '</div>';
	}
}
?>